<?php
function downloadFileKMZ($url){
	//cambiamos la extension del fichero de .kmz a .zip
	list($file, $extension) = explode(".", basename($url));
	$nameFile = $file.".zip";
	
	//guardamos el fichero
	$content = file_get_contents($url);
	file_put_contents($nameFile, $content);
}

function loadKMZ($nameFile, $_idType, $_nameType){
echo (function_exists('zip_open'));
	//Descomprimimos el fichero
	$buffer = "";
	$zip = zip_open(drupal_get_path('module','openplaya') . '/' . $nameFile);
	if(is_resource($zip)){
		while($zip_entry = zip_read($zip)){
			if(zip_entry_open($zip, $zip_entry, "r")){
				//KML que vamos leyendo
				$buffer .= zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
				zip_entry_close($zip_entry);
			}
		}
	  zip_close($zip);
	}
	//creamos el xml con los datos del kml
	$doc = new DOMDocument();
	$doc->strictErrorChecking = FALSE;
	$doc->loadHTML($buffer);
	$xml = simplexml_import_dom($doc);
	
	//print_r($xml);
	$sql = "insert into equipationtype (id, name) values (".$_idType.", '".$_nameType."');";
	db_query($sql);
	dpm('INSERT!!! '. $sql);
	//Recorre todos los nodos de la policia
	foreach($xml->body->kml->document->placemark as $placemark){
		$_distance = 3; //distancia 3km
		//$_idBeach = 1;
		//$_idType = 2;
		
		list($_lon, $_lat)= explode(",", $placemark->point->coordinates);
		$_name = $placemark->name;
		$_desc = trim(str_replace("SAC", "SAC - ", $placemark->description));
		$fp = fopen(drupal_get_path('module','openplaya') . '/' .'data.txt', 'a+');
		$sql = "SELECT id, (6371 * acos( cos( radians($_lat) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians($_lon) ) + sin( radians($_lat) ) * sin( radians( latitude ) ) ) ) AS distance FROM beach HAVING distance < $_distance ORDER BY distance limit 1";
		$result = db_query($sql);
		if($id = db_fetch_object($result)){
			$id = $id->id;
			$sql= "insert into equipation (idType, idBeach, latitude, longitude, name, description, url) values (".$_idType.", ".$id.", ".$_lat.", ".$_lon.", \"".$_name."\", \"".$_desc."\",''); \n\n";
			db_query($sql);
			dpm("OK ".$sql);
		}else {
			$id = -1;
			$sql= "insert into equipation (idType, idBeach, latitude, longitude, name, description, url) values (".$_idType.", ".$id.", ".$_lat.", ".$_lon.", \"".$_name."\", \"".$_desc."\",''); \n\n";
			fwrite($fp, $sql."\n");
			dpm("FAIL ".$sql);
		}
		fclose($fp);
    }
}

/*
//policia
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Comissaries_de_Policia.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Oficines_policials.kmz");
//Sanitat
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Centre_sanitari.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Centres_sociosanitaris.kmz");

downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Hospitals.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Albergs_de_Joventut.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Areas_d_activitat.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Bicicleta.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Comerc_Consum.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Emergencies_seguretat.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Equipaments.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Equipaments_civics.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Espais_Naturals.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Esport_i_lleure.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Estacions_dautobusos.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Infojove.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Mobilitat_Transports.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Museus.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Oficines_de_turisme.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/oficines_municipals_turisme.kmz");
downloadFileKMZ("http://dadesobertes.gencat.cat/recursos/equipaments/kmz/Turisme.kmz");
*/




?>